Important: kvm security and bug fix update

Related Vulnerabilities: CVE-2010-0431   CVE-2010-0435   CVE-2010-2784   CVE-2010-0431   CVE-2010-0435   CVE-2010-2784  

Synopsis

Important: kvm security and bug fix update

Type/Severity

Security Advisory: Important

Topic

Updated kvm packages that fix three security issues and multiple bugs are
now available for Red Hat Enterprise Linux 5.

The Red Hat Security Response Team has rated this update as having
important security impact. Common Vulnerability Scoring System (CVSS) base
scores, which give detailed severity ratings, are available for each
vulnerability from the CVE links in the References section.

Description

KVM (Kernel-based Virtual Machine) is a full virtualization solution for
Linux on AMD64 and Intel 64 systems. KVM is a Linux kernel module built for
the standard Red Hat Enterprise Linux kernel.

It was found that QEMU-KVM on the host did not validate all pointers
provided from a guest system's QXL graphics card driver. A privileged guest
user could use this flaw to cause the host to dereference an invalid
pointer, causing the guest to crash (denial of service) or, possibly,
resulting in the privileged guest user escalating their privileges on the
host. (CVE-2010-0431)

A flaw was found in QEMU-KVM, allowing the guest some control over the
index used to access the callback array during sub-page MMIO
initialization. A privileged guest user could use this flaw to crash the
guest (denial of service) or, possibly, escalate their privileges on the
host. (CVE-2010-2784)

A NULL pointer dereference flaw was found when the host system had a
processor with the Intel VT-x extension enabled. A privileged guest user
could use this flaw to trick the host into emulating a certain instruction,
which could crash the host (denial of service). (CVE-2010-0435)

This update also fixes the following bugs:

  • running a "qemu-img" check on a faulty virtual machine image ended with a
    segmentation fault. With this update, the segmentation fault no longer
    occurs when running the "qemu-img" check. (BZ#610342)
  • when attempting to transfer a file between two guests that were joined in
    the same virtual LAN (VLAN), the receiving guest unexpectedly quit. With
    this update, the transfer completes successfully. (BZ#610343)
  • installation of a system was occasionally failing in KVM. This was caused
    by KVM using wrong permissions for large guest pages. With this update, the
    installation completes successfully. (BZ#616796)
  • previously, the migration process would fail for a virtual machine
    because the virtual machine could not map all the memory. This was caused
    by a conflict that was initiated when a virtual machine was initially run
    and then migrated right away. With this update, the conflict no longer
    occurs and the migration process no longer fails. (BZ#618205)
  • using a thinly provisioned VirtIO disk on iSCSI storage and performing a
    "qemu-img" check during an "e_no_space" event returned cluster errors. With
    this update, the errors no longer appear. (BZ#618206)

All KVM users should upgrade to these updated packages, which contain
backported patches to resolve these issues. Note: The procedure in the
Solution section must be performed before this update will take effect.

Solution

Before applying this update, make sure all previously-released errata
relevant to your system have been applied.

This update is available via the Red Hat Network. Details on how to
use the Red Hat Network to apply this update are available at
http://kbase.redhat.com/faq/docs/DOC-11259

The following procedure must be performed before this update will take
effect:

1) Stop all KVM guest virtual machines.

2) Either reboot the hypervisor machine or, as the root user, remove (using
"modprobe -r [module]") and reload (using "modprobe [module]") all of the
following modules which are currently running (determined using "lsmod"):
kvm, ksm, kvm-intel or kvm-amd.

3) Restart the KVM guest virtual machines.

Affected Products

  • Red Hat Enterprise Linux Server 5 x86_64
  • Red Hat Enterprise Linux Workstation 5 x86_64

Fixes

  • BZ - 568809 - CVE-2010-0431 qemu: Insufficient guest provided pointers validation
  • BZ - 570528 - CVE-2010-0435 kvm: vmx null pointer dereference
  • BZ - 610342 - [kvm] segmentation fault when running qemu-img check on faulty image
  • BZ - 610343 - Virtio: Transfer file caused guest in same vlan abnormally quit
  • BZ - 616796 - KVM uses wrong permissions for large guest pages
  • BZ - 618205 - SPICE - race in KVM/Spice would cause migration to fail (slots are not registered properly?)
  • BZ - 618206 - [kvm] qemu image check returns cluster errors when using virtIO block (thinly provisioned) during e_no_space events (along with EIO errors)
  • BZ - 619411 - CVE-2010-2784 qemu: insufficient constraints checking in exec.c:subpage_register()

CVEs

References